package com.example.pattern.visitor;

import java.util.ArrayList;
import java.util.List;

/**
 * 对象结构类，可以包含多种不同的元素对象
 *
 * @author FM_南风
 * @date 2024/7/6
 */
public class ObjectStructure {
	private List<Element> elements = new ArrayList<>();

	public void attach(Element element) {
	 	elements.add(element);
	}

	public void detach(Element element) {
	 	elements.remove(element);
	}

	public void accept(Visitor visitor) {
	 	for (Element element : elements) {
	  		element.accept(visitor);
	 	}
	}
}